package com.vhall.component.service.notice;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vhall.component.entity.notice.NoticesEntity;
import com.vhall.component.entity.notice.vo.NoticeListRspVo;
import com.vhall.component.entity.notice.vo.NoticeListVO;
import com.vhall.component.entity.notice.vo.RedPacketNoticeVo;
import com.vhall.component.entity.notice.vo.SendNoticeReqVo;


/**
 * @author CodeGenerator
 * @date 2021-04-19 15:08:29
 * @describe 公告服务类
 */
public interface NoticesService extends IService<NoticesEntity> {

    /**
     * 公告列表
     *
     * @param reqVO
     * @return
     */
    NoticeListRspVo list(NoticeListVO reqVO);

    /**
     * 发送公告
     *
     * @param accountId
     * @param reqVo
     * @return
     */
    JSONObject sendNotices(Integer accountId, SendNoticeReqVo reqVo);

    /**
     * 发送公告公共接口
     *
     * @param roomId
     * @param content
     * @param accountId
     * @param type
     * @return
     */
    JSONObject sendNotice(String roomId, String content, Integer accountId, String type);

    /**
     * 红包消息
     *
     * @param vo
     * @return
     */
    NoticesEntity addRpNotice(RedPacketNoticeVo vo);

    /**
     * 获取红包消息
     */
    NoticesEntity getRpNotice(String rpUuid);

    /**
     * 更新红包消息
     */
    NoticesEntity updateRpNotice(RedPacketNoticeVo vo);
}
